#pragma once

#include "test.h"
#include "../TokenKinds.h"

namespace cal
{
namespace test
{

TEST(TokenKindsAPI)
{
    EXPECT_EQ("unknown", get_token_name(tok::unknown));
    EXPECT_EQ("add", get_token_name(tok::add));
    EXPECT_EQ("eocl", get_token_name(tok::eocl));
    
    EXPECT_EQ("set", get_keyword_spelling(tok::kw_set));

    EXPECT_EQ(tok::kw_set, get_keyword_tokenkind("set"));
    
    EXPECT_EQ('+', get_operator_spelling(tok::add));
    EXPECT_EQ('-', get_operator_spelling(tok::sub));
    EXPECT_EQ('*', get_operator_spelling(tok::mul));
    EXPECT_EQ('/', get_operator_spelling(tok::div));
    EXPECT_EQ('%', get_operator_spelling(tok::mod));
}

}   // namespace test
}   // namespace cal
